package com.csdj.s3project.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import java.io.Serializable;

/**
 * <p>
 * 用户信息表
 * </p>
 *
 * @author zq
 * @since 2022-02-04
 */
public class User implements Serializable {

    private static final long serialVersionUID = 1L;

    /**
     * id
     */
    @TableId(value = "id", type = IdType.AUTO)
    private Integer id;

    /**
     * 用户名,昵称
     */
    private String name;

    /**
     * 账号
     */
    private String account;

    /**
     * 密码
     */
    private String password;

    /**
     * 角色编号,1为管理员,0为用户
     */
    private Integer roleId;

    /**
     * 积分
     */
    private Integer integral;

    /**
     * 邮箱
     */
    private String email;

    /**
     * 个人介绍
     */
    private String introduce;

    /**
     * 上级用户
     */
    private String superiorUser;

    /**
     * 邀请码
     */
    private String invitation;

    /**
     * 头像路径
     */
    private String headUrl;

    /**
     * 用户连续签到天数
     */
    private Integer signInNumberOfDays;

    /**
     * 验证码
     * @return
     */
    @TableField(exist = false)
    private String checkCode;

    /**
     * 上级邀请码
     */
    @TableField(exist = false)
    private String superiorInvitation;

    /**
     * 用户状态
     * @return
     */
    @TableField(exist = false)
    private int status;

    /**
     * 用户token
     * @return
     */
    @TableField(exist = false)
    private String token;

    public Integer getId() {
        return id;
    }

    public void setId(Integer id) {
        this.id = id;
    }
    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }
    public String getAccount() {
        return account;
    }

    public void setAccount(String account) {
        this.account = account;
    }
    public String getPassword() {
        return password;
    }

    public void setPassword(String password) {
        this.password = password;
    }
    public Integer getRoleId() {
        return roleId;
    }

    public void setRoleId(Integer roleId) {
        this.roleId = roleId;
    }
    public Integer getIntegral() {
        return integral;
    }

    public void setIntegral(Integer integral) {
        this.integral = integral;
    }
    public String getEmail() {
        return email;
    }

    public void setEmail(String email) {
        this.email = email;
    }
    public String getIntroduce() {
        return introduce;
    }

    public void setIntroduce(String introduce) {
        this.introduce = introduce;
    }
    public String getSuperiorUser() {
        return superiorUser;
    }

    public void setSuperiorUser(String superiorUser) {
        this.superiorUser = superiorUser;
    }
    public String getInvitation() {
        return invitation;
    }

    public void setInvitation(String invitation) {
        this.invitation = invitation;
    }
    public String getHeadUrl() {
        return headUrl;
    }

    public void setHeadUrl(String headUrl) {
        this.headUrl = headUrl;
    }
    public Integer getSignInNumberOfDays() {
        return signInNumberOfDays;
    }

    public String getCheckCode() {
        return checkCode;
    }

    public void setCheckCode(String checkCode) {
        this.checkCode = checkCode;
    }

    public String getSuperiorInvitation() {
        return superiorInvitation;
    }

    public void setSuperiorInvitation(String superiorInvitation) {
        this.superiorInvitation = superiorInvitation;
    }

    public int getStatus() {
        return status;
    }

    public void setStatus(int status) {
        this.status = status;
    }

    public String getToken() {
        return token;
    }

    public void setToken(String token) {
        this.token = token;
    }

    public void setSignInNumberOfDays(Integer signInNumberOfDays) {
        this.signInNumberOfDays = signInNumberOfDays;
    }

    @Override
    public String toString() {
        return "User{" +
                "id=" + id +
                ", name='" + name + '\'' +
                ", account='" + account + '\'' +
                ", password='" + password + '\'' +
                ", roleId=" + roleId +
                ", integral=" + integral +
                ", email='" + email + '\'' +
                ", introduce='" + introduce + '\'' +
                ", superiorUser='" + superiorUser + '\'' +
                ", invitation='" + invitation + '\'' +
                ", headUrl='" + headUrl + '\'' +
                ", signInNumberOfDays=" + signInNumberOfDays +
                ", checkCode='" + checkCode + '\'' +
                ", superiorInvitation='" + superiorInvitation + '\'' +
                ", status=" + status +
                ", token='" + token + '\'' +
                '}';
    }
}
